from 工程.凌云项目.X5JL接收激励模块.基础配置.基础配置引用 import *

def 接收通道延时测试初始化():
    模块编号 = str(sys.UUTINFO[1])
    if gy参数.初始化标识 != '接收通道延时测试初始化'+模块编号:
        gy参数.初始化标识='接收通道延时测试初始化'+模块编号
    else:
        return
    gy产品.模块电源.连接()
    gy产品.模块串口.连接()
    gy产品.模块CAN总线.连接()
    gy仪器.示波器.连接()
    gy仪器.信号源.连接()
    gy产品.射频路由.连接()

    gy仪器.示波器.设置水平标度(5e-7)
    gy仪器.示波器.设置水平延时(0)
    gy仪器.示波器.选择通道('ch1')
    gy仪器.示波器.选择通道('ch3')
    gy仪器.示波器.设置通道垂直标度(1,0.5)
    gy仪器.示波器.设置通道垂直偏移(1,0)
    gy仪器.示波器.设置通道垂直标度(3, 1)
    gy仪器.示波器.设置数学通道垂直标度(1,0.5)
    gy仪器.示波器.设置通道垂直偏移(3, 0)
    gy仪器.示波器.设置触发源('ch3')
    gy仪器.示波器.设置触发斜率()
    gy仪器.示波器.设置通道触发电平(0.1,3)
    gy仪器.示波器.设置打开数学通道()
    gy仪器.示波器.数字通道设置('FABS(CH1)')
    gy仪器.示波器.设置测量值打开(1)
    gy仪器.示波器.设置测量值时延(1,'ch3','math1')
    gy仪器.示波器.设置触发模式()
    gy仪器.示波器.设置运行()
    gy仪器.示波器.设置单次触发()

    gy仪器.信号源.设置幅度dBm(-60)
    gy仪器.信号源.设置脉冲调制开关('开')
    gy仪器.信号源.设置脉冲调制周期(20e-6)
    gy仪器.信号源.设置脉冲调制宽度(4e-6)
    gy仪器.信号源.调制开关('开')
    gy仪器.信号源.射频开关('开')

    gy产品.射频路由.接通通道延时测试()
    print("接收通道延时测试初始化")

def 接收通道延时测试(带宽=8,通道=1):
    接收通道延时测试初始化()
    gy产品.射频路由.接通通道延时测试(通道)
    频点 = 1092
    频率 = 频点 * 1000000
    gy产品.模块串口.设置频点(频点)
    gy产品.模块串口.设置AGC衰减(0)
    if 带宽 == 8:
        gy产品.模块串口.设置带宽模式('line2_8M')
        幅度=-20
    elif 带宽 == 5:
        gy产品.模块串口.设置带宽模式('log3_80_5M')
        幅度 = -30
    elif 带宽 == 3.75:
        gy产品.模块串口.设置带宽模式('line1_375')
        幅度 = -60
    elif 带宽 == 0.65:
        gy产品.模块串口.设置带宽模式('line1_065')
        幅度 = -60

    gy仪器.信号源.设置幅度dBm(幅度)
    gy仪器.信号源.设置频率(频率)


    gy方法.时间处理.延时(0.5)
    gy仪器.示波器.设置运行()
    gy仪器.示波器.设置单次触发()
    gy仪器.示波器.设置关闭数学通道()
    gy方法.时间处理.延时(0.5)

    gy仪器.示波器.设置打开数学通道()
    gy方法.时间处理.延时(1)
    通道延时=gy仪器.示波器.读测量值()*1e9
    通道延时+=gy参数.通道延时补偿
    gy方法.测试结果保存.结果保存(通道延时, "")
    gy参数.延时不一致[通道] = 通道延时
    if len(gy参数.延时不一致) > 1:
        增益不一致 = abs(gy参数.延时不一致[1] - gy参数.延时不一致[2])
        gy方法.测试结果保存.结果保存(增益不一致, '增益不一致')


if __name__=='__main__':
    pass
    sys.UUTINFO = [0, 1]
    接收通道延时测试(8)